.flatpickr-input,
.flatpickr-wrapper input {
  z-index:1;
  cursor:pointer
}
.flatpickr-wrapper {
  position:absolute;
  display:none
}
.flatpickr-wrapper.inline,
.flatpickr-wrapper.inline .flatpickr-calendar,
.flatpickr-wrapper.static {
  position:relative
}
.flatpickr-wrapper.static .flatpickr-calendar {
  position:absolute
}
.flatpickr-wrapper.inline,
.flatpickr-wrapper.open {
  display:inline-block
}
.flatpickr-wrapper.inline .flatpickr-calendar,
.flatpickr-wrapper.open .flatpickr-calendar {
  z-index:99999;
  visibility:visible
}
.flatpickr-calendar {
  background:#fff;
  border:1px solid #ddd;
  font-size:90%;
  border-radius:3px;
  position:absolute;
  top:100%;
  left:0;
  visibility:hidden;
  width:256px
}
.flatpickr-calendar.hasWeeks {
  width:288px
}
.flatpickr-calendar.hasWeeks .flatpickr-weekdays span {
  width:12.5%
}
.flatpickr-calendar:after,
.flatpickr-calendar:before {
  position:absolute;
  display:block;
  pointer-events:none;
  border:solid transparent;
  content:'';
  height:0;
  width:0;
  left:22px
}
.flatpickr-calendar:before {
  border-width:5px;
  margin:0 -5px
}
.flatpickr-calendar:after {
  border-width:4px;
  margin:0 -4px
}
.flatpickr-calendar.arrowTop:after,
.flatpickr-calendar.arrowTop:before {
  bottom:100%
}
.flatpickr-calendar.arrowTop:before {
  border-bottom-color:#ddd
}
.flatpickr-calendar.arrowTop:after {
  border-bottom-color:#fff
}
.flatpickr-calendar.arrowBottom:after,
.flatpickr-calendar.arrowBottom:before {
  top:100%
}
.flatpickr-calendar.arrowBottom:before {
  border-top-color:#ddd
}
.flatpickr-calendar.arrowBottom:after {
  border-top-color:#fff
}
.flatpickr-month {
  background:0 0;
  color:#000;
  padding:4px 5px 2px;
  text-align:center;
  position:relative
}
.flatpickr-next-month,
.flatpickr-prev-month {
  text-decoration:none;
  cursor:pointer;
  position:absolute;
  top:.5rem
}
.flatpickr-next-month i,
.flatpickr-prev-month i {
  position:relative
}
.flatpickr-next-month:hover,
.flatpickr-prev-month:hover {
  color:#f99595
}
.flatpickr-prev-month {
  float:left;
  left:.5rem
}
.flatpickr-next-month {
  float:right;
  right:.5rem
}
.flatpickr-current-month {
  font-size:135%;
  font-weight:300;
  color:rgba(0,0,0,.7);
  display:inline-block
}
.flatpickr-current-month .cur_month {
  font-weight:700;
  color:#000
}
.flatpickr-current-month .cur_year {
  background:0 0;
  box-sizing:border-box;
  color:inherit;
  cursor:default;
  padding:0 0 0 2px;
  margin:0;
  width:3.15em;
  display:inline;
  font-size:inherit;
  font-weight:300;
  line-height:inherit;
  height:initial;
  border:0
}
.flatpickr-current-month .cur_year:hover {
  background:rgba(0,0,0,.05)
}
.flatpickr-weekdays {
  font-size:90%;
  background:0 0;
  padding:2px 0 4px;
  text-align:center
}
.flatpickr-weekdays span {
  opacity:.54;
  text-align:center;
  display:inline-block;
  width:14.28%;
  font-weight:700
}
.flatpickr-weeks {
  width:32px;
  float:left
}
.flatpickr-days {
  padding-top:1px;
  outline:0
}
.flatpickr-days span,
.flatpickr-weeks span {
  background:0 0;
  border:1px solid transparent;
  border-radius:150px;
  box-sizing:border-box;
  color:#393939;
  cursor:pointer;
  display:inline-block;
  font-weight:300;
  width:34px;
  height:34px;
  line-height:33px;
  margin:0 1px 1px;
  text-align:center
}
.flatpickr-days span.disabled,
.flatpickr-days span.disabled:hover,
.flatpickr-days span.nextMonthDay,
.flatpickr-days span.prevMonthDay,
.flatpickr-weeks span.disabled,
.flatpickr-weeks span.disabled:hover,
.flatpickr-weeks span.nextMonthDay,
.flatpickr-weeks span.prevMonthDay {
  color:rgba(57,57,57,.3);
  background:0 0;
  border-color:transparent;
  cursor:default
}
.flatpickr-days span.nextMonthDay:focus,
.flatpickr-days span.nextMonthDay:hover,
.flatpickr-days span.prevMonthDay:focus,
.flatpickr-days span.prevMonthDay:hover,
.flatpickr-days span:focus,
.flatpickr-days span:hover,
.flatpickr-weeks span.nextMonthDay:focus,
.flatpickr-weeks span.nextMonthDay:hover,
.flatpickr-weeks span.prevMonthDay:focus,
.flatpickr-weeks span.prevMonthDay:hover,
.flatpickr-weeks span:focus,
.flatpickr-weeks span:hover {
  cursor:pointer;
  outline:0;
  background:#e6e6e6;
  border-color:#e6e6e6
}
.flatpickr-days span.today,
.flatpickr-weeks span.today {
  border-color:var(--secondarycolor);
}
.flatpickr-days span.today:focus,
.flatpickr-days span.today:hover,
.flatpickr-weeks span.today:focus,
.flatpickr-weeks span.today:hover {
  border-color:var(--secondarycolor);
  background:var(--secondarycolor);
  color:#fff
}
.flatpickr-days span.selected,
.flatpickr-days span.selected:focus,
.flatpickr-days span.selected:hover,
.flatpickr-weeks span.selected,
.flatpickr-weeks span.selected:focus,
.flatpickr-weeks span.selected:hover {
  background:var(--secondarycolor);
  color:#fff;
  border-color:var(--secondarycolor);
}
.flatpickr-am-pm,
.flatpickr-time input[type=number],
.flatpickr-time-separator {
  height:38px;
  display:inline-block;
  line-height:38px;
  color:#393939
}
.flatpickr-time {
  overflow:auto;
  text-align:center;
  border-top:0;
  outline:0
}
.flatpickr-time input[type=number] {
  background:0 0;
  -webkit-appearance:none;
  -moz-appearance:textfield;
  box-shadow:none;
  border:0;
  border-radius:0;
  width:33%;
  min-width:33%;
  text-align:center;
  margin:0;
  padding:0;
  cursor:pointer;
  font-weight:700
}
.flatpickr-am-pm:focus,
.flatpickr-am-pm:hover,
.flatpickr-time input[type=number]:focus,
.flatpickr-time input[type=number]:hover {
  background:#f0f0f0
}
.flatpickr-time input[type=number].flatpickr-minute {
  width:26%;
  font-weight:300
}
.flatpickr-time input[type=number].flatpickr-second {
  font-weight:300
}
.flatpickr-time input[type=number]:focus {
  outline:0;
  border:0
}
.flatpickr-time.has-seconds input[type=number] {
  width:25%;
  min-width:25%
}
.flatpickr-days+.flatpickr-time {
  border-top:1px solid #ddd
}
.flatpickr-am-pm {
  outline:0;
  width:21%;
  padding:0 2%;
  cursor:pointer;
  text-align:left;
  font-weight:300
}
@media all and (-ms-high-contrast:none) {
  .flatpickr-month {
    padding:0
  }
}
